const path = require('path')
// const { injectBabelPlugin } = require('react-app-rewired');

// 针对react-app-rewired@2之前的版本
// module.exports = function override(config, env) {
    // config: 原有webpack配置

    // 修改配置
    // config.resolve.alias['@'] = path.join(__dirname, './src/')
    // config = injectBabelPlugin([
    //     "@babel/plugin-proposal-decorators", { "legacy": true }
    // ], config);

    

    // 函数中一定要返回新的配置
//     return config;
// }

// 针对react-app-rewired@2后的版本（所有配置方法移置到了customize-cra模块）
const {
    override,
    addDecoratorsLegacy,
    disableEsLint,
    addBundleVisualizer,
    addWebpackAlias,
    adjustWorkbox,
    addBabelPlugins,
    addBabelPresets
  } = require("customize-cra");

  module.exports = override(
    // 添加webpack别名
    addWebpackAlias({
        '@':path.join(__dirname,'src')
    }),

    // 添加babel插件
    // ...addBabelPlugins(
    //     ["@babel/plugin-proposal-decorators", { "legacy": true }],
    //     "@babel/plugin-proposal-object-rest-spread"
    // ),

    // 添加babel预设
    // ...addBabelPresets(
    //     "@babel/preset-react",
    //     [
    //         "@babel/preset-env",
    //         {
    //             targets: {
    //                 browsers: ["> 1%", "last 2 versions"]
    //             },
    //         }
    //     ],
    // ),
    
    // 添加webpack加载器
    // addWebpackModuleRule({test: /\.txt$/, use: 'raw-loader'})
  )